package com.cskaoyan._19collection._05list.arraylist;

import org.junit.Test;

import java.util.ArrayList;

/**
 * @author Macro_Ray
 * @since 2024/3/29 22:11
 */
// ArrayList 增删改查
/*
     boolean add(E e)           添加

     boolean remove(E e)        删除
     E remove(int index)

     E set(int index, E element)    修改

     E get(int index)           查询
     int size()                 获取长度
     */

public class ArrayListDemo2 {
    @Test
    public void addTest() {
        // 1.创建集合
        ArrayList<String> list = new ArrayList<>();
        // 2.添加元素
        list.add("cyy");
        list.add("mcr");
        list.add("abc");
        list.add("xyz");

        System.out.println(list);
    }

    @Test
    public void removeTest() {
        // 1.创建集合
        ArrayList<String> list = new ArrayList<>();
        // 2.添加元素
        list.add("cyy");
        list.add("mcr");
        list.add("abc");
        list.add("xyz");
        // 3.删除元素
        list.remove(3);  // 删除索引为3的元素
        System.out.println(list);

        list.remove("abc");  // 删除值为"abc"的元素
        System.out.println(list);
    }

    @Test
    public void setTest() {
        // 1.创建集合
        ArrayList<String> list = new ArrayList<>();
        // 2.添加元素
        list.add("cyy");
        list.add("mcr");
        list.add("abc");
        list.add("xyz");
        // 3.修改元素
        list.set(1, "love");  // 修改索引为2的元素值为"love"
        list.set(2, "mcr");  // 修改索引为3的元素值为"mcr"
        System.out.println(list);
    }

    @Test
    public void getTest() {
        // 1.创建集合
        ArrayList<String> list = new ArrayList<>();

        // 2.添加元素
        list.add("cyy");
        list.add("mcr");
        list.add("abc");
        list.add("xyz");
        // 3.查询元素
        System.out.println("索引为2的元素值：" + list.get(2));  // 输出索引为2的元素值"abc"

        System.out.println("集合的长度：" + list.size());  // 输出集合的长度
        
        // 4.遍历
        for (int i = 0; i < list.size(); i++) {
            String str = list.get(i);

            System.out.print(str + " ");
        }
    }


}

